Fix object hooks in optimized device builds#42
Conversation
|
Codex review: needs maintainer review before merge. Reviewed June 11, 2026, 5:00 AM ET / 09:00 UTC. Summary Reproducibility: yes. at source level: current main reaches the helper only through Review metrics: 3 noteworthy metrics.
Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Merge the minimal one-symbol retention change once the new hosted Release-linking check passes, preserving the final-application binary assertion as regression coverage for the Do we have a high-confidence way to reproduce the issue? Yes at source level: current main reaches the helper only through Is this the best way to solve the issue? Yes; retaining only the dynamically looked-up helper and inspecting the final Release app is narrower and safer than disabling dead stripping or adding broad linker flags. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against cd6a1207f1e6. Label changesLabel changes:
Label justifications:
Evidence reviewedWhat I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
Co-authored-by: Thomas Visser <thomas.visser@gmail.com>
2f94ed2 to
5166433
Compare
Summary
IKTAddSuperImplementationToClassin optimized final binaries so object hooks can resolve their super trampoline.Closes #29.
Supersedes #30 because GitHub denied maintainer writes to the contributor fork.
Verification
bash Tests/verify_release_linking.shswift testswift test -c releaseObjectInterposeTests.testLargeStructReturnexcluded; the same failure reproduces on untouchedmasterwith Xcode 26.6.pod lib lint --platforms=ios,macos,watchos --allow-warnings --skip-tests_IKTAddSuperImplementationToClass.